package io.xccit.race.domain;

import io.xccit.common.core.domain.BaseEntity;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;

/**
 * 竞赛获奖管理对象 race_competition_win
 * 
 * @author ywx
 * @date 2025-10-13
 */
public class RaceCompetitionWin extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /** 获奖ID */
    private Long id;
    
    /** 竞赛ID */
    private Long competitionId;
    
    /** 报名记录ID */
    private Long signupId;
    
    /** 成果物ID */
    private Long resultId;
    
    /** 奖项等级（一等奖，二等奖，三等奖） */
    private String awardLevel;
    
    /** 获奖时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private java.util.Date awardTime;
    
    /** 获奖原因 */
    private String awardReason;
    
    /** 删除标志（0代表存在 2代表删除） */
    private String delFlag;
    
    /** 竞赛名称（关联查询） */
    private String competitionName;
    
    /** 参赛者姓名（关联查询） */
    private String participantName;
    
    /** 成果物名称（关联查询） */
    private String resultName;

    public void setId(Long id) {
        this.id = id;
    }

    public Long getId() {
        return id;
    }

    public void setCompetitionId(Long competitionId) {
        this.competitionId = competitionId;
    }

    public Long getCompetitionId() {
        return competitionId;
    }

    public void setSignupId(Long signupId) {
        this.signupId = signupId;
    }

    public Long getSignupId() {
        return signupId;
    }

    public void setResultId(Long resultId) {
        this.resultId = resultId;
    }

    public Long getResultId() {
        return resultId;
    }

    public void setAwardLevel(String awardLevel) {
        this.awardLevel = awardLevel;
    }

    public String getAwardLevel() {
        return awardLevel;
    }

    public void setAwardTime(java.util.Date awardTime) {
        this.awardTime = awardTime;
    }

    public java.util.Date getAwardTime() {
        return awardTime;
    }

    public void setAwardReason(String awardReason) {
        this.awardReason = awardReason;
    }

    public String getAwardReason() {
        return awardReason;
    }

    public void setDelFlag(String delFlag) {
        this.delFlag = delFlag;
    }

    public String getDelFlag() {
        return delFlag;
    }

    public void setCompetitionName(String competitionName) {
        this.competitionName = competitionName;
    }

    public String getCompetitionName() {
        return competitionName;
    }

    public void setParticipantName(String participantName) {
        this.participantName = participantName;
    }

    public String getParticipantName() {
        return participantName;
    }

    public void setResultName(String resultName) {
        this.resultName = resultName;
    }

    public String getResultName() {
        return resultName;
    }

    @Override
    public String toString() {
        return "RaceCompetitionWin{" +
                "id=" + id +
                ", competitionId=" + competitionId +
                ", signupId=" + signupId +
                ", resultId=" + resultId +
                ", awardLevel='" + awardLevel + '\'' +
                ", awardTime=" + awardTime +
                ", awardReason='" + awardReason + '\'' +
                ", delFlag='" + delFlag + '\'' +
                ", competitionName='" + competitionName + '\'' +
                ", participantName='" + participantName + '\'' +
                ", resultName='" + resultName + '\'' +
                '}';
    }
}
